package com.ssvendas.modelo;

import java.io.Serializable;
import java.util.ArrayList;

import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToMany;
import javax.persistence.SequenceGenerator;

@Entity
public class Fornecedor implements Serializable{

	private static final long serialVersionUID = -9086942533956587876L;

	@Id
	@SequenceGenerator(sequenceName="FORNECEDOR_SEQ",allocationSize = 1, name = "ID_FORNECEDOR")
	@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="ID_FORNECEDOR")
	private String id;
	
	private String nome;
	
	private String nomeFantasia;
	
	private String rua;
	
	private String bairro;
	
	private String numero;
	
	private String complemento;
	
	private String cidade;
	
	private String cep;
	
	private String estado;
	
	private String ddd1;
	
	private String telefone1;
	
	private String ddd2;
	
	private String telefone2;
	
	private String nomeContato;
	
	private String cpf_cnpj;
	
	private String rg_inscricao;

	private String descricao;

	@OneToMany(fetch=FetchType.EAGER)
	@JoinColumn(name="ID_FORNECEDOR")
	private ArrayList<Produto> produtosFornecidos;
	
	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getNomeFantasia() {
		return nomeFantasia;
	}

	public void setNomeFantasia(String nomeFantasia) {
		this.nomeFantasia = nomeFantasia;
	}

	public String getRua() {
		return rua;
	}

	public void setRua(String rua) {
		this.rua = rua;
	}

	public String getBairro() {
		return bairro;
	}

	public void setBairro(String bairro) {
		this.bairro = bairro;
	}

	public String getNumero() {
		return numero;
	}

	public void setNumero(String numero) {
		this.numero = numero;
	}

	public String getComplemento() {
		return complemento;
	}

	public void setComplemento(String complemento) {
		this.complemento = complemento;
	}

	public String getCidade() {
		return cidade;
	}

	public void setCidade(String cidade) {
		this.cidade = cidade;
	}

	public String getCep() {
		return cep;
	}

	public void setCep(String cep) {
		this.cep = cep;
	}

	public String getEstado() {
		return estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}

	public String getDdd1() {
		return ddd1;
	}

	public void setDdd1(String ddd1) {
		this.ddd1 = ddd1;
	}

	public String getTelefone1() {
		return telefone1;
	}

	public void setTelefone1(String telefone1) {
		this.telefone1 = telefone1;
	}

	public String getDdd2() {
		return ddd2;
	}

	public void setDdd2(String ddd2) {
		this.ddd2 = ddd2;
	}

	public String getTelefone2() {
		return telefone2;
	}

	public void setTelefone2(String telefone2) {
		this.telefone2 = telefone2;
	}

	public String getNomeContato() {
		return nomeContato;
	}

	public void setNomeContato(String nomeContato) {
		this.nomeContato = nomeContato;
	}

	public String getCpf_cnpj() {
		return cpf_cnpj;
	}

	public void setCpf_cnpj(String cpf_cnpj) {
		this.cpf_cnpj = cpf_cnpj;
	}

	public String getRg_inscricao() {
		return rg_inscricao;
	}

	public void setRg_inscricao(String rg_inscricao) {
		this.rg_inscricao = rg_inscricao;
	}

	public String getDescricao() {
		return descricao;
	}

	public void setDescricao(String descricao) {
		this.descricao = descricao;
	}

	public ArrayList<Produto> getProdutosFornecidos() {
		return produtosFornecidos;
	}

	public void setProdutosFornecidos(ArrayList<Produto> produtosFornecidos) {
		this.produtosFornecidos = produtosFornecidos;
	}
}
